将域名解析为IP
,基于同步的线程池模拟实现。底层自动进行协程调度。
function Coroutine::gethostbyname(string $domain, int $family = AF_INET): string | bool
$domain
域名,如www.baidu.com
$family
默认为AF_INET
表示返回IPv4
地址,使用AF_INET6
时返回IPv6
地址- 成功返回域名对应的
IP
地址,失败返回false
use Swoole\Coroutine as co;
$ip = co::gethostbyname("www.baidu.com");
协程DNS
查询。与co::gethostbyname
不同,swoole_async_dns_lookup_coro
是基于UDP
客户端实现。不支持/etc/hosts
配置。
函数原型:
function swoole_async_dns_lookup_coro(string $domain) : string | bool;
- 查询成功返回对应的
IP
地址 - 失败返回
false
,可使用swoole_errno
和swoole_last_error
得到错误信息